/**
 * @file job.h
 * Definição da estrutura Job.
 */

#ifndef JOB_H_
#define JOB_H_

#include <time.h>
#include <unistd.h>

/// Tamanho máximo de um comando passado pelo usuário
#define CMD_LEN 255

/**
 * Estrutura que define um processo agendado para execução.
 */
typedef struct job {

	int 	id;					///< Id que identifica o processo no nosso programa.
	pid_t 	pid;				///< Pid real do processo no sistema operacional.
	time_t 	delay;				///< Delay entre cada execução do processo.
	time_t 	time;				///< Tempo em segundos até a próxima execução.
	char 	command[CMD_LEN];	///< Comando a ser executado.
	int 	repeats;			///< Número de vezes que o processo será executado.

} Job;

#endif /* JOB_H_ */
